package com.util;
import org.apache.commons.codec.digest.DigestUtils;


import java.security.MessageDigest;

/**
 * @author Zhengjz
 * @version 1.0
 * @className Md5Util
 * @date 2020/11/13 9:30
 */
public class Md5Util {
    /**
     * MD5方法
     *
     * @param text 明文
     * @param key 密钥
     * @return 密文
     * @throws Exception
     */

    public static String md5(String text,String key) throws Exception {
        //加密后的字符串
        String encodeStr= DigestUtils.md5Hex(text);

        System.out.println("MD5加密后的字符串为:encodeStr="+encodeStr);
        return encodeStr;
    }

    /**
     * MD5验证方法
     *
     * @param text 明文
     * @param key 密钥
     * @param md5 密文
     * @return true/false
     * @throws Exception
     */
    public static boolean verify(String text, String key, String md5) throws Exception {
        //根据传入的密钥进行验证
        String md5Text = md5(text,key);
        if(md5Text.equalsIgnoreCase(md5))
        {
            System.out.println("MD5验证通过");
            return true;
        }

        System.out.println("验证没you通过!");
        return false;
    }


    public static void main(String[] args) throws Exception {
       // md5("qwe","ert");

        verify("qweert","ert","f5427c686cb91b020c69c1ebb8b19cf3");
    }

}
